#ifndef PONTO_H
#define PONTO_H

class Ponto{
      private:
              int grupopertencente,dimnum; //dimnum = numero de dimensoes do ponto
              int rotulo; //nome,indice,rotulo do ponto, somente para identificar o ponto
      public:
             
             Ponto();
             Ponto(int dim,int numcent);
             float *coordenada; //ponteiro para as coordenadas do ponto... x,y,z,...,n
             double *distancia; //ponteiro para armazenar as distancias em relacao aos centroides
             
             void carregaponto();
             void MostraPonto(void);//mostra as coordenadas do ponto na tela...
             void GetDim(void);//pega a dimensao dinamicamente, fazendo uma pergunta ao usuario
             void InsereDim(int n);//insere a dimensao do ponto
             void InsereGrupo(int n);//insere um grupo ao ponto
             void MostraGrupo();//mostra o grupo ao qual ele pertence
             int RetornaGrupo(void);//retorna o grupo ao qual o ponto pertence
             int RetornaDim(void);//retorna o numero de dimensoes do ponto
             void InsertNumCent(int numcent);//insere o numero de centroides existentes
             void MostraDistancias(int numcent);//mostra as distancias do ponto em relacao aos centroides
             int GetMenorDistancia(int numcent);//retorna o grupo com menor distancia
             void SetRotulo(int r);//seta um rotulo no ponto
             int GetRotulo(void);//retorna o rotulo do ponto
      
      };

#endif 
